package org.jb.coinche.client.gin;

import org.jb.coinche.client.gui.card.AuctionPanel;
import org.jb.coinche.client.gui.card.CardList;
import org.jb.coinche.client.gui.card.ScorePanel;
import org.jb.coinche.client.gui.card.SetPanel;
import org.jb.coinche.client.gui.card.StatusPanel;
import org.jb.coinche.client.gui.card.impl.GameWindow;
import com.google.gwt.inject.client.AbstractGinModule;
import com.google.inject.Provides;

public class CoincheGUIModule extends AbstractGinModule {

	@Override
	protected void configure() {
		
	}
		
	@Provides
	public SetPanel getSetPanel( GameWindow gw ) {
		return gw.getSetPanel();
	}
	
	@Provides @Old
	public SetPanel getPlayedSetPanel( GameWindow gw ) {
		return gw.getPlayedSetPanel();
	}
	
	@Provides
	public CardList getCardList( GameWindow gw ) {
		return gw.getCardList();
	}

	@Provides
	public AuctionPanel getAuctionPanel( GameWindow gw ) {
		return gw.getAuctionPanel();
	}
	
	@Provides @Round
	public ScorePanel getRoundScore( GameWindow gw ) {
		return gw.getRoundScorePanel();
	}
	
	@Provides @Global
	public ScorePanel getGlobalScore( GameWindow gw ) {
		return gw.getGlobalScorePanel();
	}
	
	@Provides
	public StatusPanel getStatusPanel( GameWindow gw ) {
		return gw.getStatusPanel();
	}
}
